package br.com.jmed.service;

import java.util.List;

import javax.ejb.Stateless;
import javax.inject.Inject;

import br.com.jmed.dao.Parametros;
import br.com.jmed.dao.ProcedimentoDao;
import br.com.jmed.model.Procedimento;

@Stateless
public class ProcedimentoService {

	@Inject
	private ProcedimentoDao procedimentoDao;

	private Procedimento procedimento;

	private List<Procedimento> procedimentoList;

	public List<Procedimento> findProcedimentoByNome(String descricao) {
		Parametros<String> parametro = new Parametros<String>();
		parametro.setNome("descricao");
		parametro.setValor("%" + descricao + "%");
		return procedimentoDao.findToList("Procedimento.findByDescricao", parametro);
	}

	public Procedimento findProcedimentoByCod(Integer codigo) {
		return procedimentoDao.find(Procedimento.class, codigo);
	}

	public List<Procedimento> findAllProcedimento() {
		return procedimentoDao.findToList("Procedimento.findAll",
				new Parametros[0]);
	}

	public Procedimento findProcedimentoByCode(Integer codigo) {
		return procedimentoDao.find(Procedimento.class, codigo);
	}

	public Procedimento salvarProcedimento(Procedimento Procedimento) {
		procedimentoDao.save(Procedimento);
		return Procedimento;
	}

	public void atualizarProcedimento(Procedimento Procedimento) {
		procedimentoDao.merge(Procedimento);
	}

	public ProcedimentoDao getProcedimentoDao() {
		return procedimentoDao;
	}

	public void setProcedimentoDao(ProcedimentoDao procedimentoDao) {
		this.procedimentoDao = procedimentoDao;
	}

	public Procedimento getProcedimento() {
		return procedimento;
	}

	public void setProcedimento(Procedimento procedimento) {
		this.procedimento = procedimento;
	}

	public List<Procedimento> getProcedimentoList() {
		return procedimentoList;
	}

	public void setProcedimentoList(List<Procedimento> procedimentoList) {
		this.procedimentoList = procedimentoList;
	}

}
